embedded open source direct 3d unix embedded systems games windows dynamic terrain engines dataset production development custom software development linux databases directx software development software c++